///******************************************************************************* // * Copyright (c) 2007 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // ******************************************************************************/ // //package org.eclipse.ui.tests.services; // //import org.eclipse.ui.IViewPart; //import org.eclipse.ui.IViewReference; //import org.eclipse.ui.IWorkbench; //import org.eclipse.ui.IWorkbenchWindow; //import org.eclipse.ui.progress.IProgressService; //import org.eclipse.ui.progress.IWorkbenchSiteProgressService; //import org.eclipse.ui.services.AbstractServiceFactory; //import org.eclipse.ui.services.IDisposable; //import org.eclipse.ui.services.IServiceLocator; //import org.eclipse.ui.services.IServiceLocatorCreator; //import org.eclipse.ui.tests.harness.util.UITestCase; // ///** // * @since 3.4 // * // */ //public class ContributedServiceTest extends UITestCase { // // /** // * @param testName // */ // public ContributedServiceTest(String testName) { // super(testName); // } // // public void testGlobalService() throws Exception { // assertNotNull(getWorkbench().getService(IWorkbench.class)); // // ILevelService l = (ILevelService) getWorkbench().getService( // ILevelService.class); // assertNotNull(l); // assertEquals(1, l.getLevel()); // // l = (ILevelService) getWorkbench().getService(ILevelService.class); // assertNotNull(l); // assertEquals(1, l.getLevel()); // // assertEquals(1, LevelServiceFactory.instancesCreated); // } // // public void testWindowService() throws Exception { // IServiceLocator locator = getWorkbench().getActiveWorkbenchWindow(); // assertNotNull(locator.getService(IWorkbenchWindow.class)); // // ILevelService l = (ILevelService) locator // .getService(ILevelService.class); // assertNotNull(l); // assertEquals(2, l.getLevel()); // // assertEquals(2, LevelServiceFactory.instancesCreated); // // l = (ILevelService) locator.getService(ILevelService.class); // assertNotNull(l); // assertEquals(2, l.getLevel()); // // l = (ILevelService) getWorkbench().getService(ILevelService.class); // assertNotNull(l); // assertEquals(1, l.getLevel()); // // assertEquals(2, LevelServiceFactory.instancesCreated); // } // // private static class TempLevelFactory extends AbstractServiceFactory { // private int level; // // public TempLevelFactory(int l) { // level = l; // } // // public Object create(Class serviceInterface, // IServiceLocator parentLocator, IServiceLocator locator) { // return new ILevelService() { // // public int getLevel() { // return level; // } // }; // } // } // // public void testLocalServiceCreated() throws Exception { // IServiceLocator parent = getWorkbench().getActiveWorkbenchWindow(); // assertNotNull(parent.getService(IWorkbenchWindow.class)); // // IServiceLocatorCreator lc = (IServiceLocatorCreator) parent // .getService(IServiceLocatorCreator.class); // IServiceLocator locator = lc.createServiceLocator(parent, null); // // ILevelService l = (ILevelService) locator // .getService(ILevelService.class); // assertNotNull(l); // assertEquals(3, l.getLevel()); // // assertEquals(3, LevelServiceFactory.instancesCreated); // // if (locator instanceof IDisposable) { // ((IDisposable) locator).dispose(); // } // // locator = lc.createServiceLocator(parent, null); // l = (ILevelService) locator.getService(ILevelService.class); // assertNotNull(l); // assertEquals(3, l.getLevel()); // // assertEquals(4, LevelServiceFactory.instancesCreated); // if (locator instanceof IDisposable) { // ((IDisposable) locator).dispose(); // } // // locator = lc.createServiceLocator(parent, new TempLevelFactory(8)); // l = (ILevelService) locator.getService(ILevelService.class); // assertNotNull(l); // assertEquals(8, l.getLevel()); // // assertEquals(4, LevelServiceFactory.instancesCreated); // if (locator instanceof IDisposable) { // ((IDisposable) locator).dispose(); // } // } // // public void testWorkbenchServiceFactory() throws Exception { // IWorkbenchWindow window = getWorkbench().getActiveWorkbenchWindow(); // IProgressService progress = (IProgressService) window // .getService(IProgressService.class); // assertNotNull(progress); // // assertEquals(getWorkbench().getProgressService(), progress); // IViewPart part = null; // IViewReference[] refs = window.getActivePage().getViewReferences(); // for (int i = 0; i < refs.length; i++) { // if ((part = refs[i].getView(false)) != null) { // break; // } // } // // assertNotNull(part); // progress = (IProgressService) part.getSite().getService( // IProgressService.class); // assertFalse(progress == getWorkbench().getProgressService()); // assertEquals(part.getSite().getService( // IWorkbenchSiteProgressService.class), progress); // assertEquals(part.getSite().getAdapter( // IWorkbenchSiteProgressService.class), progress); // } //}